<?php 
//This is a working script
//Make sure to go through it and edit database table filelds that you are seraching
//This script assumes you are searching 3 fields

include_once "db.php" ;
include_once "checksession.php"; 

//specify how many results to display per page
 $limit = 10;

// Get the search variable from URL
  $var = @$_GET['q'] ;
  
//trim whitespace from the stored variable
  $trimmed = trim($var);  
  
//separate key-phrases into keywords
  $trimmed_array = explode(" ",$trimmed); 
  
  // check for an empty string and display a message.
if ($trimmed == "") {
  $resultmsg =  "<p class=error>Please enter in your search Criteria.</p>" ;
  }

// check for a search parameter
if (!isset($var)){
  $resultmsg =  "<p class=error>Please enter in your search Criteria.</p>" ;
  }
 
// Build SQL Query for each keyword entered 
foreach ($trimmed_array as $trimm){
      
// EDIT HERE and specify your table and field names for the SQL query
     $query = "SELECT * FROM Calls WHERE first_name LIKE \"%$trimm%\" OR last_name LIKE  \"%$trimm%\" OR pipeline_userid LIKE \"%$trimm%\" OR email LIKE  \"%$trimm%\" OR other_name LIKE  \"%$trimm%\"ORDER BY last_name   DESC" ; 

	 
// Execute the query to  get number of rows that contain search kewords
     $numresults=mysql_query ($query);
     $row_num_links_main =mysql_num_rows ($numresults);

// next determine if 's' has been passed to script, if not use 0.
// 's' is a variable that gets set as we navigate the search result pages.
    if (empty($s)) {
         $s=0;
     }

      // now let's get results.
      $query .= " LIMIT $s,$limit" ;
      $numresults = mysql_query ($query) or die ( "Couldn't execute query" );
      $row= mysql_fetch_array ($numresults);

      //store record id of every item that contains the keyword in the array we need to do this to avoid display of duplicate search result.
      do{
 //EDIT HERE and specify your field name that is primary key
          $adid_array[] = $row[ 'Call_ID' ];
      }while( $row= mysql_fetch_array($numresults));
 } //end foreach

if($row_num_links_main == 0 && $row_set_num == 0){
   $resultmsg = "<p class=normal>Search results for:" . $trimmed  ."</p><p class=error>Sorry, your search returned zero results</p>" ;
}
   //delete duplicate record id's from the array. To do this we will use array_unique function
   $tmparr = array_unique($adid_array); 
   $i=0; 
   foreach ($tmparr as $v) { 
       $newarr[$i] = $v; 
       $i++; 
   } 

// now you can display the results returned. But first we will display the search form on the top of the page
?>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>Online College Helpdesk - Search Form</title>
<link href="meta-style.css" rel="stylesheet" type="text/css" />
</head>

<body>
<?php
include_once "topnav.php";
?>
<p class="title">Search HelpDesk Entries</p>
<table width="700" border="1" cellpadding="0" cellspacing="2" bordercolor="#003366">
<tr>
<td width="350" align="right">
<p class="normal"><br>
  Please enter in your search Criteria. <br><br> You can search by the following fields: <br>
  <strong>First Name, Last Name, Other Name, Pipeline ID</strong> or<strong> Email.</strong><br>
  <br>
  <br>
</p>
</td>
<td width="350" align="center">
<form action="search.php" method="get" name="search">
      <input name="q" type="text" value="<?php echo $q; ?> " size="25"> 
      <input name="search" type="submit" value="Search!">
  </form>
</td>
</tr>
</table>

<?php
// display what the person searched for.
 if( isset ($resultmsg)){
  echo $resultmsg;
  exit();
 }else{
  
  echo "<br><br><table width=700 border=1 cellpadding=0 bordercolor=#003366>" ;
  echo "<tr><td align=left><p class=bigred>Search results for: " . $var . "</p></td></tr>";
 }
 
foreach($newarr as $value){
 
// EDIT HERE and specify your table and field names for the SQL query
$query_value = "SELECT * FROM Calls WHERE Call_ID = '$value'";
 $num_value=mysql_query ($query_value);
 $row_linkcat= mysql_fetch_array ($num_value);
 $row_num_links= mysql_num_rows ($num_value);

//now let's make the keywods bold. To do that we will use preg_replace function. 
//EDIT parts of the lines below that have fields names like $row_linkcat[ 'field1' ]
//This script assumes you are searching only 3 fields. If you are searching more fileds make sure that add appropriate line. 
  $fname = preg_replace ( "'($var)'si" , "<b>\\1</b>" , $row_linkcat[ 'first_name' ] );
  $lname = preg_replace ( "'($var)'si" , "<b>\\1</b>" , $row_linkcat[ 'last_name' ] );
  $email = preg_replace ( "'($var)'si" , "<b>\\1</b>" , $row_linkcat[ 'email' ] );
  $puserid = preg_replace ( "'($var)'si" , "<b>\\1</b>" , $row_linkcat[ 'pipeline_userid' ] );
  $oname = preg_replace ( "'($var)'si" , "<b>\\1</b>" , $row_linkcat[ 'other_name' ] );



foreach($trimmed_array as $trimm){
    if($trimm != 'b' ){
//IF you added more fields to search make sure to add them below as well.
        
		$fname = preg_replace( "'($trimm)'si" ,  "<b>\\1</b>" , $fname);
        $lname = preg_replace( "'($trimm)'si" , "<b>\\1</b>" , $lname);
        $email = preg_replace( "'($trimm)'si" ,  "<b>\\1</b>" , $email); 
		$puserid = preg_replace ( "'($trimm) 'si" , "<b>\\1</b>" , $puserid);
		$oname = preg_replace ( "'($trimm) 'si" , "<b>\\1</b>" , $oname);
     }
//end highlight

?>
<tr>
<td align="left">
 <p class="normal">
<?php echo "<a href=calls_detail.php?callid=" . $value .">View Details</a>"; ?> <br>
<?php echo $fname; ?><br>
<?php echo $lname; ?><br>
<?php echo $email; ?><br>
<?php echo $puserid; ?><br>
<?php echo $oname; ?>
</td></tr>
</p>
 
<?php 
}   //end foreach $trimmed_array 
   if($row_num_links_main > $limit){
   // next we need to do the links to other search result pages
      if ($s>=1) { // do not display previous link if 's' is '0'
        $prevs=($s-$limit);
         echo "<div align='left'><a href='$PHP_SELF?s=$prevs&q=$var&catid=$catid'>Previous " .$limit. "</a></div>";
      }
     // check to see if last page
     $slimit =$s+$limit;
       if (!($slimit >= $row_num_links_main) && $row_num_links_main!=1) {
     // not last page so display next link
          $n=$s+$limit;
           echo "<div align='right'><a href='$PHP_SELF?s=$n&q=$var&catid=$catid'>Next " .$limit. "</a></div>";
        }
    }
}  //end foreach $newarr
?>
</table>
</body>
</html>
